package com.twt.controller;

import com.twt.entity.Result;
import com.twt.entity.User;
import com.twt.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;


    /**
     * 登录
     *
     * @param username,password 参数封装
     * @return Result
     */
    //http://localhost:8080/user/login?password=123456&username=XiaoDong
    @PostMapping("/login")
    public Result login(@RequestParam("username") String username, @RequestParam("password") String password) {

        return userService.login(username, password);
    }

    /**
     * 设置昵称
     *
     * @param username,nickname 参数封装
     * @return Result
     */
    //http://localhost:8080/user/setNickName?username=XiaoDong&nickname=ljx
    @PostMapping(value = "/setNickName")
    public Result setNickName(@RequestParam("username") String username, @RequestParam("nickname") String nickname) {
        return userService.setNickName(username, nickname);
    }


    /**
     * 系统头像上传数据库
     *
     * @param username,firstHead 参数封装
     * @return Result
     */
    @PostMapping(value = "/setFirstHead")
    public Result setFirstHead(@RequestParam("firstHead") int firstHead, @RequestParam("username") String username) {
        return userService.setFirstHead(firstHead, username);
    }


    /**
     * 查询用户所拥有的所有瓶子和内容
     * 要查自己扔出去的瓶子（被捡到了），同时自己捡的瓶子也要查出来，id是先后顺序的保障，同时，优先级更高的是置顶，其次是有新消息
     * 当瓶子有新消息的时候要把瓶子的id变为表中最大的//（并没有做
     *
     * @param username 参数封装
     * @return Result
     */
    //http://localhost:8080/user/allBottle?username=lijiaxing
    @GetMapping("/allBottle")
    public Result findAllBottle(@RequestParam("username") String username) {
        return userService.getAllBottle(username);
    }


}

